package com.liu.yupao.once;

import cn.hutool.json.JSONUtil;
import com.alibaba.excel.EasyExcel;
import lombok.extern.slf4j.Slf4j;

import java.util.List;

/**
 * @author lqh
 * @since 2025-09-03 23:22
 */
@Slf4j
public class SimpleRead {

    /**
     * 最简单的
     */
    public static void main(String[] args) {
        // since: 3.0.0-beta1
        String fileName ="E:\\dev\\YuPao\\yupao-backend\\src\\main\\resources\\Test.xlsx";
        // 具体需要返回多少行可以在`PageReadListener`的构造函数设置
        ExcelReadByListener (fileName);
        synchronousRead (fileName);
    }

    /**
     * 监听器读取
     */
    public static void ExcelReadByListener(String fileName){
        EasyExcel.read(fileName, UserInfo.class, new UserInfoListener()).sheet().doRead();
    }
    /**
     * 同步读取
     */
    public static void synchronousRead(String fileName){
        // 这里 需要指定读用哪个class去读，然后读取第一个sheet 同步读取会自动finish
        List<UserInfo> list = EasyExcel.read(fileName).head(UserInfo.class).sheet().doReadSync();
        for (UserInfo data : list) {
            log.info("读取到数据:{}", JSONUtil.toJsonStr (data));
        }
    }
}
